package com.woniuxy.service;

import com.woniuxy.controller.form.*;
import com.woniuxy.exception.DdException;
import com.woniuxy.exception.GroupNotExsitsException;
import com.woniuxy.model.PawnAttrGroup;
import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.utils.Result;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author hujianying
 * @since 2022-03-23
 */
public interface PawnAttrGroupService extends IService<PawnAttrGroup> {

    /**
     * 获取所有属性组信息
     * @return data返回GroupCatInfo
     */
    Result getAllGroupCat(GroupForm gf);

    /**
     * 根据group_name模糊查询
     * @param gf 参数为str
     * @return data返回GroupCatInfo
     */
    Result getGroupCatByLike(GroupForm gf) throws DdException;

    /**
     * 根据group_code删除
     * @param dgf group_code集合
     * @return data为null
     */
    Result deleteGroupByGid(@RequestBody DeleteGroupFrom dgf) throws DdException;

    /**
     * 根据groupCode查询
     * @param sgf groupCode
     * @return SaveGroupInfo
     */
    Result getGroupByCode(SaveGroupForm sgf);

    /**
     * 修改属性
     * @param sgf 商品属性组信息
     * @return data为null
     */
    Result saveGroupByCode(@RequestBody SaveGroupForm sgf) throws DdException;

    /**
     * 查询所有大类名
     * @return
     */
    Result getAllDProduct();

    /**
     * 新增商品属性分组
     * @param angf
     * @return
     */
    Result addNewGroup(AddNewGroupForm angf) throws DdException;

    /**
     * 根据大类id获取所有属性组名
     * @param gcbccf groupCode
     * @return
     */
    Result getAllGroupName(GetConfByCatCodeForm gcbccf);
}
